/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Source;

import java.sql.ResultSet;
import java.util.LinkedList;

/**
 *
 * @author luisfernando
 */
public class Revision_DAO {
    
    /*
     * idRevision int PRIMARY KEY,
     * fecha timestamp,
     * titulo varchar(45),
     * descripcion varchar(100),
     * estrellas int,
     * idArticulo int REFERENCES Articulo(idArticulo),
     * idUsuario int REFERENCES Usuario(idUsuario)
     */
    
    
    private String queryBD;
    ConexionDB conexion;
    LinkedList<Revision_POJO> listaDetalle = new LinkedList<Revision_POJO>();
    ResultSet resultado;

    public Revision_DAO(ConexionDB conexion) {
        this.conexion = conexion;
    }
    
    
    
     public LinkedList<Revision_POJO> obtenerReg(int idRevision) {
         
             
    
         queryBD = "SELECT * FROM Revision WHERE idRevision = " + idRevision;
         System.out.println("obtener "+queryBD);
          try {
              
            resultado = conexion.getResultSet(queryBD);

            if (resultado.next()) {
               
                
                Revision_POJO revision = new Revision_POJO();
                
                revision.setDescripcion(resultado.getString("descripcion"));
                revision.setEstrellas(Integer.parseInt(resultado.getString("estrellas")));
                revision.setFecha(resultado.getString("fecha"));
                revision.setIdArticulo(Integer.parseInt(resultado.getString("idArticulo")));
                revision.setIdUsuario(Integer.parseInt(resultado.getString("idUsuario")));
                revision.setTitulo(resultado.getString("titulo"));
                revision.setIdRevision(Integer.parseInt(resultado.getString("idRevision")));

                listaDetalle.add(revision);
                
               

            }

        } catch (Exception ex) {
            
            System.out.println("Error " + ex);
            
        }
        return listaDetalle;
     
     
     }
     
     
     /*
     * idRevision int PRIMARY KEY,
     * fecha timestamp,
     * titulo varchar(45),
     * descripcion varchar(100),
     * estrellas int,
     * idArticulo int REFERENCES Articulo(idArticulo),
     * idUsuario int REFERENCES Usuario(idUsuario)
     */
         public boolean guardarReg(int idRevision , String fecha , String titulo,String descripcion, int estrellas, int idArticulo, int idUsuario) {

        queryBD = "INSERT INTO Revision ( idRevision, fecha, titulo, descripcion,estrellas, idArticulo, idUsuario ) VALUES ("
                                  +idRevision+ ", '" + fecha + "' , '" + titulo + "' , '" + descripcion + "' , "+estrellas+", "+idArticulo
                                    +", "+idUsuario+" )";
             System.out.println("guardar "+queryBD);
        
        try {
            conexion.executeQuery(queryBD);
        
            return true;
        } catch (Exception ex) {
            
            System.out.println("error " + ex);
            return false;
            
        }

    }
         
     public boolean actualizarReg(int idRevision , String fecha , String titulo,String descripcion, int estrellas, int idArticulo, int idUsuario) {

        queryBD = "UPDATE Revision SET  "
                + "fecha= '"+fecha+"', "
                + "titulo = '" + titulo +"', "
                + "descripcion = '"+descripcion+"', "
                + "estrellas = "+estrellas+", "
                + "idArticulo = "+idArticulo + ", "
                + "idUsuario = "+ idUsuario + " "
                + " WHERE idRevision = " + idRevision;

        

        System.out.println("actualizar "+queryBD);
        try {
            conexion.executeQuery(queryBD);
            //System.out.println ("Insert exitoso");
            return true;

        } catch (Exception ex) {
            System.out.println("error " + ex);
            return false;
        }
    }
     
       public boolean eliminarReg (int idRevision ){
        
        queryBD = "DELETE FROM Revision WHERE idRevision = "+idRevision;
System.out.println("delete "+queryBD);
        try {
            conexion.executeQuery(queryBD);
            return true;

        } catch (Exception ex) {
            System.out.println("error " + ex);
            return false;
        }
        
    }
         
    
}
